Method and apparatus for generating alternative representation of optimization models

ABSTRACT

A method for determining an alternative representation of an optimization model reduces model input through compact representation of model parameters. Model generation is performed at varying levels of complexity (approximation) depending on pre-defined, business approved thresholds.

GOVERNMENT LICENSE RIGHTS

This invention was made with Government support under Contract No.43-82X9-3-5073 awarded by USDA, Forest Service. The U.S. Government hascertain rights in this invention.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to computer-implementedoptimization models for solution of problems and, more particularly, toan approach for generating alternative representations for anoptimization model while keeping model parameters at an acceptable,pre-determined accuracy threshold.

2. Background Description

Real-world modeling problems often result in an implementation thatmakes the model instances intractable due to computationally prohibitivedata size and structural complexity. The prior art solutions to suchlarge problems involved simplification of the model by eitheraggregating the data or simplifying the model assumptions. Hence, theresulting solution is sub-optimal due to both data aggregation and modelsimplification, and even solving smaller sized problems results insub-optimal outcomes. As a result, the prior art solutions are not fullysatisfactory.

SUMMARY OF THE INVENTION

An exemplary object of the present invention is to provide a system andmethod for using a computer implemented alternative model generationmechanism to solve the optimization model instances having varyingdegrees of size and complexity.

The present invention addresses the shortcomings of the prior artsolutions by employing a flexible modeling approach which enablesgeneration of model instances at varying levels of complexity, therebyenabling scalability. The present invention is thus able to solve modelinstances ranging from small size and/or low complexity to large sizeand/or high complexity, with graceful degradation of optimality.

According to present invention, each input data instance (for theoptimization model) contains multiple sets of input parameter functions.Said method and system employ as input, in a machine-readable dataformat, a set of functions, each of which contains:

-   -   A set of x-axis values for the function.    -   A set of y-axis values for the function.        For example, in the FPA (Fire program Analysis) application the        fire perimeter input data contains data points representing        cumulative perimeter growth values (y-axis), in chains/minute,        at incremental time points (x-axis) during the course of a wild        land fire.

The method and system according to the invention then produce as outputfor each of the functions, in a machine readable data format:

-   -   A set of break-point values.    -   A set of slope values for each piece defined by the breakpoint.    -   The first coordinate (x-axis value) of the anchor point.    -   The second coordinate (y-axis value) of the anchor point.        This results in a compaction of input data by eliminating        redundant data points while maintaining the precision of the        input function.

It is therefore an object of the invention to reduce model input throughcompact representation of model parameters.

As a second step, the method and system according to the invention takesin the output from the previous step and also the following additionalparameter in a machine-readable data format:

-   -   Pre-determined accuracy threshold.        The method and system according to the invention then produces        as output, for each of the functions, in a machine readable data        format:    -   A set of break-point values.    -   A set of slope values for each piece defined by the breakpoint.    -   The first coordinate of the anchor point.    -   The second coordinate of the anchor point.

It is another object of the invention to enable model generation atvarying levels of complexity (approximation) depending on pre-defined,business approved thresholds. According to the invention, there isprovided an approach for generating alternative representations for anoptimization model which has the following advantages:

-   -   Instances can be generated at varying levels of complexity        depending on a pre-determined threshold. This in turn enables        scalability.    -   Reduce model input and storage by extracting and compacting        functional forms of the model parameters. In the case of the        FPA, the parameters include fire growth and resource deployment        parameter data.    -   Solve an efficient model with reduced memory requirements,        improved solution time, and improved solution quality.        More specifically, the invention provides a method for        determining an alternative representation of an optimization        model based on establishing an acceptable threshold for        modifying parameters. According to the invention,    -   Domain Reduction is achieved by a data transformation component,    -   Domain Reduction facilitates an efficient reformulation of the        model, and    -   The spectrum of domain reduction results in a series of        hierarchical model instances.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, aspects and advantages will be betterunderstood from the following detailed description of a preferredembodiment of the invention with reference to the drawings, in which:

FIG. 1 is a block diagram of a computer system on which the methodaccording to the invention may be implemented;

FIG. 2 is a block diagram of a server used in the computer system shownin FIG. 1;

FIG. 3 is a block diagram of a client used in the computer system shownin FIG. 1;

FIG. 4 is a block diagram illustrating a business problem which issolved using a two-stage stochastic integer program;

FIG. 5 is a block and data flow diagram illustrating a two-phasesolution approach;

FIG. 6 is a graphical of similar functions but with differentapproximations;

FIG. 7 is a block and data flow diagram showing an application of theinvention to a specific project;

FIG. 8 is a block diagram illustrating in more detail the datatransformer used in the system of FIG. 7;

FIG. 9 is a graphical illustration of a data transformation example;

FIG. 10 is a block and data flow diagram illustrating an alternate modelgenerator according to the invention;

FIG. 11 is a graphical illustration of an alternate model generationexample; and

FIG. 12 is a block and data flow diagram illustrating a flexibleoptimization application.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION

Optimization modeling is a branch of Operations Research that involvesformulating a decision making problem in a mathematical construct so asto maximize or minimize an objective. The decision to be made isrepresented as decision variables while the appropriate measure ofperformance (i.e. profit) is expressed as a mathematical function, knownas the objective function, using the decision variables and the problemparameters. The restrictions are represented as mathematical constructscalled constraints. The common theme in optimization modeling is thesearch for an optimal solution. The optimization model, when combinedwith the input data (containing problem parameters), results in anoptimization model instance. Tractability of the optimization modelinstance is crucial in reaching the optimal solution.

Referring now to the drawings, and more particularly to FIG. 1, there isshown a computer system on which the method according to the inventionmay be implemented. Computer system 100 contains a network 102, which isthe medium used to provide communications links between various devicesand computers connected together within computer system 100. Network 102may include permanent connections, such as wire or fiber optic cables,wireless connections, such as wireless Local Area Network (WLAN)products based on the IEEE 802.11 specification (also known as Wi-Fi),and/or temporary connections made through telephone, cable or satelliteconnections, and may include a Wide Area Network (WAN) and/or a globalnetwork, such as the Internet. A server 104 is connected to network 102along with storage unit 106. In addition, clients 108, 110 and 112 alsoare connected to network 102. These clients 108, 110 and 112 may be, forexample, personal computers or network computers. For purposes of thisapplication, a network computer is any computer, coupled to a network,which receives a program or other application from another computercoupled to the network. The server 104 provides data, such as bootfiles, operating system images, and applications to clients 108, 110 and112. Clients 108, 110 and 112 are clients to server 104.

Computer system 100 may include additional servers, clients, and otherdevices not shown. In the depicted example, the Internet provides thenetwork 102 connection to a worldwide collection of networks andgateways that use the TCP/IP (Transmission Control Protocol/Internetprotocol) suite of protocols to communicate with one another. At theheart of the Internet is a backbone of high-speed data communicationlines between major nodes or host computers, consisting of thousands ofcommercial, government, educational and other computer systems thatroute data and messages. In this type of network, hypertext mark-uplanguage (HTML) documents and applets are used to exchange informationand facilitate commercial transactions. Hypertext transfer protocol(HTTP) is the protocol used in these examples to send data betweendifferent data processing systems. Of course, computer system 100 alsomay be implemented as a number of different types of networks such as,for example, an intranet, a local area network (LAN), or a wide areanetwork (WAN). FIG. 1 is intended as an example, and not as anarchitectural limitation for the present invention.

Referring to FIG. 2, a block diagram of a data processing system thatmay be implemented as a server, such as server 104 in FIG. 1, isdepicted in accordance with a preferred embodiment of the presentinvention. Server 200 may be used to execute any of a variety ofbusiness processes. Server 200 may be a symmetric multiprocessor (SMP)system including a plurality of processors 202 and 204 connected tosystem bus 206. Alternatively, a single processor system may beemployed. Also connected to system bus 206 is memory controller/cache208, which provides an interface to local memory 209. Input/Output (I/O)bus bridge 210 is connected to system bus 206 and provides an interfaceto I/O bus 212. Memory controller/cache 208 and I/O bus bridge 210 maybe integrated as depicted.

Peripheral component interconnect (PCI) bus bridge 214 connected to I/Obus 212 provides an interface to PCI local bus 216. A number of modemsmay be connected to PCI bus 216. Typical PCI bus implementations willsupport four PCI expansion slots or add-in connectors. Communicationslinks to network computers 108, 110 and 112 in FIG. 1 may be providedthrough modem 218 and network adapter 220 connected to PCI local bus 216through add-in boards.

Additional PCI bus bridges 222 and 224 provide interfaces for additionalPCI buses 226 and 228, from which additional modems or network adaptersmay be supported. In this manner, server 200 allows connections tomultiple network computers. A graphics adapter 230 and hard disk 232 mayalso be connected to I/O bus 212 as depicted, either directly orindirectly.

Those of ordinary skill in the art will appreciate that the hardwaredepicted in FIG. 2 may vary. For example, other peripheral devices, suchas optical disk drives and the like, also may be used in addition to orin place of the hardware depicted. The depicted example is not meant toimply architectural limitations with respect to the present invention.

The data processing system depicted in FIG. 2 may be, for example, anIBM RISC/System 6000 system, a product of International BusinessMachines Corporation in Armonk, N.Y., running the Advanced InteractiveExecutive (AIX) operating system.

With reference now to FIG. 3, a block diagram illustrating a clientcomputer is depicted in accordance with a preferred embodiment of thepresent invention. Client computer 300 employs a peripheral componentinterconnect (PCI) local bus architecture. Although the depicted exampleemploys a PCI bus, other bus architectures such as Accelerated Graphicsport (AGP) and Industry Standard Architecture (ISA) may be used.Processor 302 and main memory 304 are connected to PCI local bus 306through PCI bridge 308. PCI bridge 308 also may include an integratedmemory controller and cache memory for processor 302. Additionalconnections to PCI local bus 306 may be made through direct componentinterconnection or through add-in boards.

In the depicted example, local area network (LAN) adapter 310, SmallComputer System Interface (SCSI) host bus adapter 312, and expansion businterface 314 are connected to PCI local bus 306 by direct componentconnection. In contrast, audio adapter 316, graphics adapter 318, andaudio/video adapter 319 are connected to PCI local bus 306 by add-inboards inserted into expansion slots. Expansion bus interface 314provides a connection for a keyboard and mouse adapter 320, modem 322,and additional memory 324. SCSI host bus adapter 312 provides aconnection for hard disk drive 326, tape drive 328, and CD-ROM drive330. Typical PCI local bus implementations will support three or fourPCI expansion slots or add-in connectors.

An operating system runs on processor 302 and is used to coordinate andprovide control of various components within data processing system 300in FIG. 3. The operating system may be a commercially availableoperating system, such as Windows XP, which is available from MicrosoftCorporation. An object-oriented programming system such as Java may runin conjunction with the operating system and provides calls to theoperating system from Java programs or applications executing on dataprocessing system 300. “Java” is a trademark of Sun Microsystems, Inc.Instructions for the operating system, the object-oriented operatingsystem, and applications or programs are located on storage devices,such as hard disk drive 326, and may be loaded into main memory 304 forexecution by processor 302.

Those of ordinary skill in the art will appreciate that the hardware inFIG. 3 may vary depending on the implementation. Other internal hardwareor peripheral devices, such as flash ROM (or equivalent nonvolatilememory) or optical disk drives and the like, and/or I/O devices, such asUniversal Serial Bus (USB) and IEEE 1394 devices, may be used inaddition to or in place of the hardware depicted in FIG. 3. Also, theprocesses of the present invention may be applied to a multiprocessordata processing system.

Data processing system 300 may take various forms, such as a stand alonecomputer or a networked computer. The depicted example in FIG. 3 andabove-described examples are not meant to imply architecturallimitations.

FIG. 4 shows scenarios 410 ₁ to 410 _(n) comprised of fire groups g₁₁ tog_(1m) and g₂₁ to g_(2m), respectively, each of which is in turncomprised of simultaneously occurring representative fires f₁₁ tof_(mn). Also shown are resources r₁ to r_(m) which can be assigned toonly one of the simultaneous fires, resulting in competition amongsimultaneous fires for available resources.

FIG. 5 shows a two phase optimization problem 500 which receivesoptimization input 510 on which is performed a phase one 520decomposition using an off-the-shelf problem (OTS) solver 530 to producea deployment solution 540, which optimally deploys resources to thefires to discover their resource preferences, and a phase two 550 globalproblem optimization, which uses the off-the-shelf problem solver 530 tosolve the global problem and employs the deployment preference decisionsmade in phase one to analyze and come up with an optimization output 560including the optimal initial response resource organization.

The optimization input 510 of FIG. 5 may contain a set of input valuesrequired to solve the model. Most notably it may contain data pertainingto:

-   1. Fires-   2. Fire Groups-   3. Fire-fighting Resources-   4. Costs    Data for each representative fire may contain its perimeter, size    (in acres), weight (fire importance, e.g., fires occurring close to    urban population have higher weights than those occurring in remote    jungles). The optimization input 510 may also contain data    pertaining to mop-up cost. A set of simultaneous fires may be    grouped together to form a fire group, imposing additional    restrictions on deployment of resources and containment of the    fires.

Resources may contain deployment and cost data pertaining to each firethey may be deployed on. Each deployable resource on a fire may containfixed cost (i.e., one time annual cost for procurement of resource),line production capacity (i.e., the capacity of the resource to containa fire by producing a line using the retardant or land cleanup tocontribute to fire containment), hourly cost (i.e., the hazard andovertime pay to the resources—machines and human crew over thedeployment period). Various other cost and capacity restrictions may bedefined in the input data, e.g., leadership, station and equipmentpenalty groups that contribute to the total cost.

Referring now to FIG. 6, there are shown graphs of simple functions. Thex-axis of each graph corresponds to time, and the y-axis corresponds tothe values of the function f(x). Since the values are cumulative, theyare always non-decreasing. The “Input” graph contains the “as-is” valuesof the function. The “Appx1” and “Appx2” graphs contain the outputvalues of the function. Referring to the “Input” graph, there is shown agraph having “as-is” value of the function. This “as-is” value is givenas an input to the application. It contains number of discrete datapoints corresponding to values of the function at different timeintervals in machine readable format having:

-   -   A set of x-axis values for the function.    -   A set of y-axis values for the function.        For example, in the FPA (Fire Program Analysis) application, the        fire perimeter input data contains data points representing        cumulative perimeter growth values (y-axis), in chains/minute,        at incremental time points (x-axis) during the course of a wild        land fire. The “Appx1” and “Appx2” graphs are two alternate        output that can be generated based on the value of the        “threshold” input parameter. This transformation of input        function “Input” to any one of the output functions “Appx1” or        “Appx2” helps in compaction of the input function.

Referring now to FIG. 7, there is shown the “as-is” and “proposed”process for alternative representation of optimization model. Referringfirst to the “as-is” process, there is shown in the block diagram, theprocess used to solve optimization problem. The “Business Application”710 is the component responsible for getting the user inputs andtransforming those inputs to generate the set of functions to be used bythe optimization engine. The output of this component is a machinegenerated function shown in the “Optimization Input” component 712. The“Optimization Application” 714 is the component that reads as input themachine generated “Optimization Input”. This “Optimization Application”714 then processes the “Optimization Input” 712 by using a commercialoff-the-shelf (OTS) solver 720.

Referring next to the “proposed process”, there is show in block diagramform an innovative computer implemented alternative model generationmechanism to solve the optimization model instances having varyingdegrees of size and complexity. The “Data Transformer” 730 is thecomponent that takes as input, in a machine-readable data format, a setof functions, each of which contains:

-   -   A set of x-axis values for the function.    -   A set of y-axis values for the function.        The “Data Transformer” component 730 then produces as output for        each of the functions, in a machine readable data format:    -   A set of break-point values.    -   A set of slope values for each piece defined by the breakpoint.    -   The first coordinate (x-axis value) of the anchor point.    -   The second coordinate (y-axis value) of the anchor point.        The “Data Transformer” component 730, during the transformation        of the input function, also performs compaction of input data by        eliminating redundant data points while maintaining the        precision of the input function. The “Alternate Model Generator”        732 is the component that takes in the output from the “Data        Transformer” 730 and also the following additional parameter in        a machine-readable data format:    -   Pre-determined accuracy threshold.        The “Alternate Model Generator” component 732 then produces as        output, for each of the functions, in a machine readable data        format:    -   A set of break-point values.    -   A set of slope values for each piece defined by the breakpoint.    -   The first coordinate of the anchor point.    -   The second coordinate of the anchor point.        The “Alternate Model Generator” component 732 then enables model        generation at varying levels of complexity (approximation)        depending on pre-defined, business approved thresholds.        According to the invention, there is provided an approach for        generating alternative representations for an optimization model        which has the following advantages:    -   Instances can be generated at varying levels of complexity        depending on a pre-determined threshold. This in turn enables        scalability.    -   Reduce model input and storage by extracting and compacting        functional forms of the model parameters. In the case of FPA,        the parameters include fire growth and resource deployment        parameter data.    -   Solve an efficient model with reduced memory requirements,        improved solution time, and improved solution quality.        More specifically, the invention provides a method for        determining an alternative representation of an optimization        model based on establishing an acceptable threshold for        modifying parameters. According to the invention,    -   Domain Reduction is achieved by a data transformation component,    -   Domain Reduction facilitates an efficient reformulation of the        model, and    -   The spectrum of domain reduction results in a series of        hierarchical model instances.        The “Flexible Optimization Application” 736 is the component        that takes advantage of the alternate models and is designed and        built in such a way that it works seamlessly with all types of        forms. This is enabled by building the optimization application        to work with complex data structures viz: piecewise linear        functions.

Using piecewise linear representations in the optimization application,enables the optimization application to work regardless of the size andcomplexity of the input model instance. It also enables the optimizationapplication to work well with convex, concave, linear, or piece-wiselinear functions consistently.

FIG. 8 shows in more detail the “Data Transformer” component 730. Thiscomponent takes as input, in a machine-readable data format, a set offunctions, each of which contains:

-   -   A set of x-axis values for the function.    -   A set of y-axis values for the function.        The “Data Transformation” component 730 then produces as output        for each of the functions, in a machine readable data format:    -   A set of break-point values.    -   A set of slope values for each piece defined by the breakpoint.    -   The first coordinate (x-axis value) of the anchor point.    -   The second coordinate (y-axis value) of the anchor point.        The “Data Transformation” component 730 converts the discrete        data corresponding to input functions generated by Enterprise        application system, a more compact machine readable format        resulting in:    -   Elimination of redundant data points    -   Maintaining the precision i.e. keeping the exact functional        forms    -   Reducing the memory footprint

FIG. 9 shows a simple example of the working of “Data Transformer”component. The input function contains six discrete data points. Thisfunction when run through the “Data Transformer” component reduces thenumber of data points to five thereby resulting in compaction of thefunction without loss of precision.

FIG. 10 shows in more detail the “Alternate Model Generator” component732. This component enables generation of data instance with reducedlevel of complexity depending on the input threshold. This enablesscalability since now models with large size and extreme complexitybecome tractable. This component takes as input, the output from theprevious step and also the following additional parameter in amachine-readable data format:

-   -   Pre-determined accuracy threshold 1010.        The “Alternate Model Generator” component 732 then produces as        output, for each of the functions, in a machine readable data        format:    -   A set of break-point values.    -   A set of slope values for each piece defined by the breakpoint.    -   The first coordinate of the anchor point.    -   The second coordinate of the anchor point.        This component then enables model generation at varying levels        of complexity (approximation) depending on pre-defined, business        approved thresholds.

FIG. 11 shows a simple example of alternate model generation using twodifferent values of threshold. Using different values of threshold, thefigure shows two resulting output “Appx1” and “Appx2”. Also note thatusing threshold value zero, results in an output function that is theexact representation of the input function.

Referring to FIG. 12, there is shown in more detail the “FlexibleOptimization Application” component 736. The “Flexible OptimizationApplication” component takes advantage of alternate model generationcapability to work seamlessly with all levels of approximations(including exact representation) of functional forms. This is enabled bybuilding the optimization application to work with complex datastructures viz: piecewise linear. Alternate data instances can be givenas input to the Flexible Optimization Model 1210. These alternate datainstances are created as a result of using different threshold values inthe “Alternate Model” generator 732. Feeding these alternate datainstances to the Flexible Optimization Model 1210, results in creationof alternate optimization model instances 1220. An optimization modelinstance is a computer representation resulting from combining theoptimization model with the input data instance. It essentially containsa matrix of linear constraint coefficients. These alternate modelinstances are then solved using a COTS (commercial off-the-shelf) solverresulting in alternate model outputs. Since the alternate optimizationmodel instances vary in size and complexity due to different thresholdvalues applied, each of them results in an output that varies from theother. Generally the optimization model instances generated using lowthreshold are large in size and more complex and hence take more CPU(central processing unit) and memory to reach optimality than the onesgenerated using high threshold. Also the outputs of these optimizationmodel inputs generated using low threshold are more precise than theother ones, since each of the function is very close in representationto the original input function.

According to the invention, there is provided an approach for generatingalternative representations for an optimization model which has thefollowing advantages:

-   -   Instances can be generated at varying levels of complexity        depending on a pre-determined threshold. This in turn enables        scalability.    -   Reduce model input and storage by extracting and compacting        functional forms of the model parameters. In the case of the        FPA, the parameters include fire growth and resource deployment        parameter data.    -   Solve an efficient model with reduced memory requirements,        improved solution time, and improved solution quality.        More specifically, the invention provides a method for        determining an alternative representation of an optimization        model based on establishing an acceptable threshold for        modifying parameters. According to the invention,    -   Domain Reduction is achieved by a data transformation component,    -   Domain Reduction facilitates an efficient reformulation of the        model, and    -   The spectrum of domain reduction results in a series of        hierarchical model instances.

While the invention has been described in terms of a single preferredembodiment, those skilled in the art will recognize that the inventioncan be practiced with modification within the spirit and scope of theappended claims.

1. A computer implemented method for alternative model generation tosolve optimization model instances having varying degrees of size andcomplexity comprising the steps of: retrieving input data instances foran optimization model, wherein each input data instance containsmultiple sets of input parameters; compacting the input data byeliminating redundant data points while maintaining precision of aninput function; retrieving a pre-determined acceptable threshold formodifying model parameters; and determining an optimal alternativerepresentation of the optimization model while keeping parameters withinthe acceptable threshold.
 2. The computer implemented method of claim 1,wherein the input data instances comprise a set of functions having aset of x-axis values and a set of y-axis values, data points of y-axisvalues representing growth values and data points of x-axis valuesrepresenting incremental time points, the step of compacting comprisinggenerating a set of break-point values, a set of slope values for eachpiece defined by a breakpoint, and x and y coordinates of an anchorpoint.
 3. The computer implemented method of claim 2, wherein the stepof determining an optimal alternative representation of the optimizationmodel generates alternative models at varying levels of complexitydepending on pre-determined acceptable thresholds.
 4. The computerimplemented method of claim 3, further comprising the step of using thealternative representation to rebuild a new optimization model.
 5. Thecomputer implemented method of claim 3, wherein the optimization modelrepresents a problem of budgeting fire-management resources.
 6. Acomputer implemented alternative model generation mechanism for solvingoptimization model instances having varying degrees of size andcomplexity comprising: a data transformer receiving retrieving inputdata instances for an optimization model, wherein each input datainstance contains multiple sets of input parameters, said datatransformer compacting the input data instances by eliminating redundantdata points while maintaining precision of an input function; analternate model generator receiving output from the data transformer anda pre-determined accuracy threshold and generating output that enablesmodel generation at various levels of complexity depending onpre-defined, business approved thresholds; and a flexible optimizationapplication which receives alternate data instances created as a resultof using different threshold values in the alternate model generator andcreates alternate optimization model instances.
 7. The computerimplemented alternative model generation mechanism of claim 6, whereinthe input data instances comprise a set of functions having a set ofx-axis values and a set of y-axis values, data points of y-axis valuesrepresenting growth values and data points of x-axis values representingincremental time points, and the data transformer compacts the inputdata instances by generating a set of break-point values, a set of slopevalues for each piece defined by a breakpoint, and x and y coordinatesof an anchor point.
 8. The computer implemented alternative modelgeneration mechanism of claim 7, wherein the flexible optimizationapplication determines an optimal alternative representation of theoptimization model and generates alternative models at varying levels ofcomplexity depending on pre-determined acceptable thresholds.
 9. Acomputer readable medium containing code for alternative modelgeneration to solve optimization model instances having varying degreesof size and complexity, the code implementing a method comprising thesteps of: retrieving input data instances for an optimization model,wherein each input data instance contains multiple sets of inputparameters; compacting the input data by eliminating redundant datapoints while maintaining precision of an input function; retrieving apre-determined acceptable threshold for modifying model parameters; anddetermining an optimal alternative representation of the optimizationmodel while keeping parameters within the acceptable threshold.
 10. Thecomputer readable medium of claim 9, wherein the input data instancescomprise a set of functions having a set of x-axis values and a set ofy-axis values, data points of y-axis values representing growth valuesand data points of x-axis values representing incremental time points,the code implemented step of compacting comprising generating a set ofbreak-point values, a set of slope values for each piece defined by abreakpoint, and x and y coordinates of an anchor point.